import os
import tensorflow as tf
import matplotlib.pyplot as plt

if __name__ == '__main__':
    os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
    # 第一次运行的时候要求联网下载数据
    # 下载文件的保存位置：C:\Users\当前登录用户名\.keras\datasets
    boston_housing = tf.keras.datasets.boston_housing.load_data(test_split=0)

    # 元组类型
    # print(type(boston_housing))
    # 里面是四个 数组
    # print(boston_housing)
    (x_train, y_train), (_, _) = boston_housing

    # print(x_train)
    # 查看数据类型
    print('特征值的类型：', type(x_train))
    print('标签值的类型：', type(y_train))

    # 查看维度
    print('特征值的维度：', x_train.ndim)
    # 查看形状
    print('特征值的外形：', x_train.shape)

    # 查看维度
    print('标签值的维度：', y_train.ndim)
    # 查看形状
    print('标签值的外形：', y_train.shape)

    print('特征值的元素数据类型：', x_train.dtype)
    print('标签值的元素数据类型：', y_train.dtype)

    print('特征值的数据——前 10 行')
    print(x_train[:10])

    print('标签值的数据——前 10 行')
    print(y_train[:10])

    # 设置的字体没有安装可以吗？
    plt.rcParams['font.sans-serif'] = ['SimHei']
    titles = ['CRIM', 'ZN', 'INDUS', 'CHAS', 'NOX', 'RM', 'AGE', 'DIS', 'RAD', 'TAX', 'PTRATIO', 'B', 'LSTAT', 'MEDV']

    plt.figure(figsize=(12,7))

    for i in range(13):
        # 三行五列
        plt.subplot(3,5,(i+1))
        plt.scatter(x_train[:, i], y_train)
        plt.xlabel(titles[i])
        plt.ylabel('房价(*1000)')
        plt.title(str(i+1)+". " + titles[i] + "-Prices")

    plt.tight_layout()
    plt.show()